package com.fowo.api.model.tmp.removal.order;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import com.alibaba.excel.annotation.write.style.ContentStyle;
import com.alibaba.excel.enums.poi.HorizontalAlignmentEnum;
import javax.validation.constraints.*;
import lombok.Getter;
import lombok.Setter;

/** 移除订单临时表 导入导出辅助模型 */
@Getter
@Setter
public class TmpRemovalOrderExcelPo {

  @Size(max = 50, message = "订单日期长度不能超过20")
  @DateTimeFormat("yyyy年MM月dd日HH:mm:ss")
  @ExcelProperty(value = "订单日期")
  private java.util.Date requestDate;

  @Size(max = 50, message = "订单号长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "订单号")
  private String orderId;

  @Size(max = 50, message = "订单类型长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "订单类型")
  private String orderType;

  @Size(max = 50, message = "订单状态长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "订单状态")
  private String orderStatus;

  @Size(max = 50, message = "订单更新时间长度不能超过20")
  @DateTimeFormat("yyyy年MM月dd日HH:mm:ss")
  @ExcelProperty(value = "订单更新时间")
  private java.util.Date lastUpdatedDate;

  @Size(max = 50, message = "MSKU长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "MSKU")
  private String sku;

  @Size(max = 50, message = "FNSKU长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "FNSKU")
  private String fnsku;

  @Size(max = 50, message = "库存属性长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "库存属性")
  private String disposition;

  @Size(max = 50, message = "请求数量长度不能超过20")
  @ExcelProperty(value = "请求数量")
  private Integer requestedQuantity;

  @Size(max = 50, message = "取消数量长度不能超过20")
  @ExcelProperty(value = "取消数量")
  private Integer cancelledQuantity;

  @Size(max = 50, message = "已处置数量长度不能超过20")
  @ExcelProperty(value = "已处置数量")
  private Integer disposedQuantity;

  @Size(max = 50, message = "已发货数量长度不能超过20")
  @ExcelProperty(value = "已发货数量")
  private Integer shippedQuantity;

  @Size(max = 50, message = "处置中数量长度不能超过20")
  @ExcelProperty(value = "处置中数量")
  private Integer inProcessQuantity;

  @Size(max = 50, message = "移除费用长度不能超过20")
  @ExcelProperty(value = "移除费用")
  private java.math.BigDecimal removalFee;

  @Size(max = 50, message = "币种长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "币种")
  private String currency;

  @Size(max = 50, message = "店铺长度不能超过20")
  @ExcelProperty(value = "店铺")
  private Long sid;

  @Size(max = 50, message = "地区长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "地区")
  private String region;

  @ExcelProperty(value = "国家")
  private Long country;

  @Size(max = 5000, message = "品名长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "品名")
  private String name;

  @Size(max = 50, message = "SKU长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "SKU")
  private String productSku;
}
